The present invention relates to a system for printing data, which system has at least one input unit, a printer for printing data from the input unit, and a controller for controlling the printer. The present invention also relates to a controller which may be used with such a system, and to a printer which may be used with such a system. Furthermore, the present invention also relates to a method for printing.
The data printed according to the present invention may be any sort of data, such as data representing words, graphics images, etc.
It is known to form a printing system in which an output unit (printer) is shared by a plurality of input units. This enables more efficient use of the printer, since it is possible for the printer to be printing data from one input unit while data is being input by a user of another input unit. Normally, data to be printed from each input unit will be divided into one or more jobs, and then it is necessary to determine a printing order for the jobs, to prevent collision of data from different jobs. Therefore, it is necessary to provide a controller for ensuring that only one job can be printed at any time. At its simplest, such a controller may be a mechanical switch, but it is preferable for the controller to be able to determine which job is to be printed at any time, without the need for specific user input.
In JP-A-62-242231, a system was disclosed in which a plurality of input units (personal computers) were connected to a common printer. When one input unit had a job to be printed, the input unit sent a signal to the printer before transmitting the job. If the printer was not currently processing a job when that signal was received, the controller signalled to the input unit to begin transmitting the job to be printed. If, on the other hand, an earlier job was already being printed, the printer signalled to the input unit to prevent the transmission of the job to the printer. Thus, whichever input unit first signalled that it had a job to print was able to print that job and the other input unit would have to wait until after that job had been printed before their own jobs could be printed. When the printer was not printing a job, it looked sequentially at each input unit for the transmission of a signal indicating that the corresponding input unit had a job to be printed.
JP-A-61-282921 disclosed an arrangement in which a plurality of input units were connected to a common controller and in which the controller had a memory in which jobs received from the plurality of input units were stored. Then each job was sequentially transmitted from that memory to the printer. This way, only one job was sent to the printer for printing at any time. In JP-A-61-282921, the transmission of jobs to the printer was on the basis of a "first-in, first-out" arrangement, so the first job received in the memory was the first to be sent to the printer for printing.